-- background: 3679 from stack: in -- bmap block id: 4224 -- flags: 0000 -- background id: 0 -- name: bMnstr ----- HyperTalk script ----- on opencard if line 2 of field "Name2" is not empty then set the hilite of background button "Large?" to line 2 of field "Name2" else set the hilite of background button "Large?" to false end opencard on newcard put "N N" into field "Moral/Order" put "Common" into field "Frequency" put "Any" into field "Activity" put "Warrior" into field "Save Class" click at the loc of field "Name2" end newcard on calcth -- THAC0 put field "Level" into lvl if "-" is in field "HD" then subtract 1 from lvl if lvl=0 then put 20 into th else put 19-2*trunc((lvl-1)/2) into th put th into field "Base THAC0" repeat with i=1 to 5 if line i of field "weapon" is not empty then put line i of field "Weapon Bonus" into wadj if character 1 of wadj is "+" then delete character 1 of wadj put th-wadj into line i of field "Weapon THAC0" wpndmg i wpndmg2 i else put empty into line i of field "Weapon THAC0" end repeat end calcth on msvthrw svthrw (field "Save Class")&","&(field "Save Level") end msvthrw -- part 6 (button) -- low flags: 00 -- high flags: 0000 -- rect: left=401 top=50 right=82 bottom=433 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Flip ----- HyperTalk script ----- on mousedown gonext end mousedown on mousestilldown gonext end mousestilldown -- part 27 (button) -- low flags: 00 -- high flags: 0000 -- rect: left=0 top=43 right=339 bottom=23 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: New Button ----- HyperTalk script ----- on mousedown goprev end mousedown on mousestilldown goprev end mousestilldown -- part 86 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=78 top=65 right=82 bottom=206 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Name2 ----- HyperTalk script ----- on closefield global nknm put false into nknm if the length of me<11 then nick line 1 of me if nknm is true then exit closefield put empty into nm repeat with i=1 to number of words of line 1 of me put character 1 of word i of line 1 of me after nm repeat with j=2 to the length of word i of line 1 of me put character j of word i of line 1 of me into chr if chr is not "a" and chr is not "e" and chr is not "i" and chr is not "o" and chr is not "u" then put chr after nm end repeat if i< the number of words of line 1 of me then put " " after nm end repeat if length of nm<11 then nick nm if nknm is true then exit closefield put empty into field "nickname" answer "Could not suggest a nickname. You try..." click at the loc of field "nickname" end closefield -- part 179 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=98 top=108 right=135 bottom=204 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Climate -- part 100 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=98 top=132 right=229 bottom=204 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Info -- part 129 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=242 top=65 right=82 bottom=288 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: HD ----- HyperTalk script ----- on closefield put 0 into lvl put interp(field "HD") into stats put item 2 of stats into lvl put lvl+1 into lexp if "+" is in field "HD" then add round(((item 4 of stats)/6)+.01) to lvl if "-" is in field "HD" then add round(((item 4 of stats)/12)+.01) to lvl if item 2 of stats<=1 and item 3 of stats<5 and item 3 of stats>1 then put 0 into lvl put lvl into field "Level" put lvl into field "Save Level" if line 1 of field "Experience" is empty then if lexp=1 then put 15 into line 1 of field "Experience" else if lexp=2 then put 35 into line 1 of field "Experience" else if lexp=3 then put 65 into line 1 of field "Experience" else if lexp=4 then put 120 into line 1 of field "Experience" else if lexp=5 then put 175 into line 1 of field "Experience" else if lexp=6 then put 270 into line 1 of field "Experience" else if lexp=7 then put 420 into line 1 of field "Experience" else if lexp=8 then put 650 into line 1 of field "Experience" else if lexp=9 then put 975 into line 1 of field "Experience" else if lexp=10 or lexp=11 then put 1400 into line 1 of field "Experience" else if lexp=12 then put 2000 into line 1 of field "Experience" end if msvthrw calcth end closefield -- part 130 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=233 top=95 right=108 bottom=288 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Experience -- part 93 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=233 top=108 right=133 bottom=288 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 3 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: -- part 140 (field) -- low flags: 00 -- high flags: 4000 -- rect: left=243 top=139 right=156 bottom=270 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 256 -- line height: 16 -- part name: AC -- part 150 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=371 top=142 right=155 bottom=417 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: # of Attacks -- part 149 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=214 top=168 right=231 bottom=280 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Weapon ----- HyperTalk script ----- on closefield calcth end closefield -- part 153 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=280 top=168 right=231 bottom=304 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Weapon Bonus ----- HyperTalk script ----- on closefield calcth end closefield -- part 152 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=325 top=168 right=231 bottom=371 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Weapon Damage ----- HyperTalk script ----- on closefield calcth end closefield -- part 89 (field) -- low flags: 03 -- high flags: 0002 -- rect: left=120 top=83 right=95 bottom=183 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 10 -- part name: Frequency ----- HyperTalk script ----- on mouseDown put "Common"&return&"Uncommon"&return&"Rare"&return&"Very Rare"& return&"Unique" into mnu get PopupMenu(mnu,0,84,121) if it is not 0 then put line it of mnu into me end mouseDown -- part 91 (field) -- low flags: 03 -- high flags: 0000 -- rect: left=223 top=67 right=80 bottom=245 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Level -- part 131 (field) -- low flags: 03 -- high flags: 0002 -- rect: left=338 top=140 right=155 bottom=365 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 14 -- part name: Base THAC0 -- part 144 (field) -- low flags: 02 -- high flags: 0000 -- rect: left=293 top=118 right=133 bottom=320 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 14 -- part name: Paralyze -- part 145 (field) -- low flags: 02 -- high flags: 0000 -- rect: left=317 top=118 right=133 bottom=344 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 14 -- part name: Staff/Wand -- part 146 (field) -- low flags: 02 -- high flags: 0000 -- rect: left=341 top=118 right=133 bottom=368 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 14 -- part name: Petrify/Polymorph -- part 147 (field) -- low flags: 02 -- high flags: 0000 -- rect: left=365 top=118 right=133 bottom=392 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 14 -- part name: Breath Weapon -- part 148 (field) -- low flags: 02 -- high flags: 0000 -- rect: left=389 top=118 right=133 bottom=416 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 12 -- style flags: 0 -- line height: 14 -- part name: Spells -- part 151 (field) -- low flags: 03 -- high flags: 0000 -- rect: left=303 top=168 right=231 bottom=326 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 256 -- line height: 12 -- part name: Weapon THAC0 -- part 154 (field) -- low flags: 00 -- high flags: 2007 -- rect: left=34 top=230 right=330 bottom=418 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Descript -- part 158 (field) -- low flags: 01 -- high flags: 0002 -- rect: left=38 top=67 right=80 bottom=80 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Cat2 ----- HyperTalk script ----- on mousedown global MnstrMenu get PopupMenu(MnstrMenu,chkitm,68,39) if it is not 0 then put line it of MnstrMenu into me end mousedown -- part 160 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=292 top=70 right=83 bottom=352 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: nickname ----- HyperTalk script ----- on closefield set the name of this card to me if chknm() is true then set the name of this card to empty put empty into me answer "Sorry, that nickname is taken. Try another..." click at the loc of me end if end closefield -- part 161 (button) -- low flags: 00 -- high flags: 0000 -- rect: left=376 top=61 right=82 bottom=398 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: help ----- HyperTalk script ----- on mouseUp gohelp "Monster Help" end mouseUp -- part 163 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=28 right=55 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp godm end mouseUp -- part 164 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=56 right=83 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp goadv end mouseUp -- part 165 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=84 right=111 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp goenc end mouseUp -- part 166 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=112 right=139 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp gocom end mouseUp -- part 167 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=140 right=167 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp goexp end mouseUp -- part 168 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=308 right=335 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp gocal end mouseUp -- part 169 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=168 right=195 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp gohero end mouseUp -- part 170 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=196 right=223 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: bMnstr ----- HyperTalk script ----- on mouseUp if the optionKey is up then gomnstr else answer "Import Dungeon Mastery 1.0 monster data?" with "Yes" or "No" if it is "No" then exit to hypercard push card pop card into mnstrcd put mnstrcd go "the old Dungeon Mastery stack" if this card is mnstrcd then exit to hypercard go to card 1 of background "Monsters" repeat with i=2 to the number of cards of this background go to card i of this background push card put field "Monster Name" into nm put field "Monster Level" into lv put field "Monster Damage" into dmg put field "Monster Attacks" into att put field "AC" into ac put field "Monster Movement" into mv put field "info" into info go mnstrcd domenu "New Card" put nm into field "Name2" put lv into field "HD" put dmg into field "Weapon Damage" put att into field "# of Attacks" put ac into field "Base AC" put mv into line 5 of field "descript" put info into field "info" send closefield to field "HD" send closefield to field "Base AC" pop card end repeat end if end mouseUp -- part 171 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=224 right=251 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp gowiz end mouseUp -- part 172 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=280 right=307 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp goutil end mouseUp -- part 173 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=468 top=252 right=279 bottom=507 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp goitm end mouseUp -- part 174 (field) -- low flags: 03 -- high flags: 0000 -- rect: left=396 top=88 right=101 bottom=417 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Save ----- HyperTalk script ----- on mouseup put empty into me put random(20) into me end mouseUp -- part 175 (field) -- low flags: 02 -- high flags: 0000 -- rect: left=346 top=88 right=101 bottom=367 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Save Level ----- HyperTalk script ----- on closefield msvthrw end closefield -- part 176 (field) -- low flags: 03 -- high flags: 0000 -- rect: left=363 top=88 right=101 bottom=397 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Save Class ----- HyperTalk script ----- on mouseDown put "Warrior"&return&"Wizard"&return&"Priest"&return&"Rogue" into mnu repeat with i=1 to number of lines of mnu if line i of mnu is in me then put i into chkitm end repeat get PopupMenu(mnu,chkitm,88,365) if it is not 0 then set cursor to "watch" put line it of mnu into me msvthrw end if end mousedown -- part 178 (field) -- low flags: 03 -- high flags: 0002 -- rect: left=120 top=96 right=108 bottom=183 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 10 -- part name: Activity ----- HyperTalk script ----- on mouseDown put "Any"&return&"Day"&return&"Night"&return&"Full Moon" into mnu get PopupMenu(mnu,0,97,121) if it is not 0 then put line it of mnu into me end mouseDown -- part 180 (field) -- low flags: 01 -- high flags: 0002 -- rect: left=239 top=83 right=95 bottom=281 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 10 -- part name: Moral/Order ----- HyperTalk script ----- on mousedown put "L G"&return&"N G"&return&"C G"&return&"L N"&return&"N N"&return& "C N"&return&"L E"&return&"N E"&return&"C E" into mnu repeat with i=1 to number of lines of mnu if line i of mnu is in me then put i into chkitm end repeat get PopupMenu(mnu,chkitm,84,240) if it is not 0 then put line it of mnu into me end mousedown -- part 181 (field) -- low flags: 02 -- high flags: 4000 -- rect: left=371 top=168 right=231 bottom=416 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 21 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Weapon Damage 2 -- part 182 (button) -- low flags: 00 -- high flags: 0005 -- rect: left=354 top=68 right=84 bottom=372 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Large? ----- HyperTalk script ----- on mouseUp if "true" is in line 2 of field "Name2" then put "false" into line 2 of field "Name2" else put "true" into line 2 of field "Name2" set the hilite of me to line 2 of field "Name2" end mouseUp